package main

import (
	"errors"
	"iot-base/common/cache"
	"iot-base/common/ctrltype"
)

//type DoorTask struct {
//	DTask []Task `json:"tasks"`
//	Seq   int64  `json:"seq"`
//}

type Task struct {
	Brand string `json:"brand"`
	//用于区分品牌使用 目前支持NewVersion
	ID    string `json:"id"`
	Seq   *int   `json:"seq,omitempty"`
	Order int    `json:"order"`
	//根据命令类型执行 1:人员增加 2:人员删除 3:人员信息查询 4:IC卡添加或更新 5:IC卡删除 6:IC卡查询 7:远程开门
	Params interface{} `json:"params"`
}

func gTask(pCmd *ctrltype.CtrlCmd) (map[string]interface{}, error) {
	thingInfo, err := cache.GetThing(pCmd.ThingID)
	if err != nil {
		return nil, errors.New("no this dev")
	}
	//thingInfo.SetThingParam("spec","NewVersionFaceBrand")
	spec := thingInfo.GetThingParam("spec", "NewVersionFaceBrand")
	switch spec {
	case NVFBrand:
		manager := NewVersionClient{}
		return manager.Order(pCmd)
	}
	return nil, nil
}
